package com.imooc.service;

import com.imooc.pojo.DataDictionary;
import com.imooc.pojo.bo.DataDictionaryBO;
import com.imooc.utils.PagedGridResult;
import java.util.List;
import java.util.Map;

/**
 * @version 1.0
 * @Author Mr.Yang
 * @Date 2024-08-30 10:07
 * @question:
 */

public interface DataDictionaryService {

    /**
     * 根据Id获得数据字典
     * @param dictId
     * @return
     */
    public DataDictionary getDataDictionary(String dictId);

    /**
     * 创建或者更新数据字典
     * @param dataDictionaryBO
     */
    public void createOrUpdateDataDictionary(DataDictionaryBO dataDictionaryBO);


    /**
     * 根据字典类别或者字典值查询列表
     * @param typeName
     * @param itemValue
     * @param page
     * @param limit
     * @return
     */
    public PagedGridResult getDataDictListPaged(String typeName, String itemValue, Integer page, Integer limit);

    /**
     * 删除数据字典
     * @param dictId
     */
    public void deleteDataDictionary(String dictId);

    /**
     * 根据字典码获得数据字典列表
     * @param typeCode
     * @return
     */
    public List<DataDictionary> getDataByCode(String typeCode);

    /**
     * 查询全部字典表
     * @return
     */
    Map<String, List<DataDictionary>> getDictList();
}

